package com.nuoniu.sibanyun.entity.vo.statistics;


import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;

@Data
@ApiModel("库存统计__库存台账")
public class InventoryStandingBookVo {

    @ApiModelProperty(value = "单据日期")
    @TableField("voucher_date")
    private LocalDate voucherDate;

    @ApiModelProperty(value = "出入库日期")
    @TableField("in_date")
    private LocalDate inDate;

    @ApiModelProperty(value = "数据来源(单据类型)")
    @TableField("data_source")
    private String dataSource;

    @ApiModelProperty(value = "单据编码")
    @TableField("voucher_code")
    private String voucherCode;

    @ApiModelProperty(value = "单据状态")
    @TableField("voucher_state")
    private Integer voucherState;

    @ApiModelProperty(value = "业务类型")
    @TableField("business_type")
    private Integer businessType;

    @ApiModelProperty(value = "客户名称")
    private String crmName;

    @ApiModelProperty(value = "供应商名称")
    private String vendorName;

    @ApiModelProperty(value = "部门车间名称")
    private String officeName;

    @ApiModelProperty(value = "项目名称")
    @TableField("project_name")
    private String projectName;

    @ApiModelProperty(value = "项目编码")
    @TableField("project_code")
    private String projectCode;

    @ApiModelProperty(value = "批号")
    @TableField("batch_no")
    private String batchNo;

    @ApiModelProperty(value = "收入数量")
    private BigDecimal inBaseQuantity;

    @ApiModelProperty(value = "收入单价")
    private BigDecimal inPrice;

    @ApiModelProperty(value = "收入金额")
    private BigDecimal inAmount;

    @ApiModelProperty(value = "发出数量")
    private BigDecimal outBaseQuantity;

    @ApiModelProperty(value = "发出单价")
    private BigDecimal outPrice;

    @ApiModelProperty(value = "发出金额")
    private BigDecimal outAmount;

    @ApiModelProperty(value = "结存数量")
    @TableField("base_quantity")
    private BigDecimal balanceBaseQuantity;

    @ApiModelProperty(value = "结存单价")
    @TableField("price")
    private BigDecimal balancePrice;

    @ApiModelProperty(value = "结存金额")
    @TableField("amount")
    private BigDecimal balanceAmount;


    @ApiModelProperty(value = "收发类别（ 收/发） 1:收 2：发 3：期初结存 4：期间汇总 5.月合计 6.年合计")
    @TableField("receive_deliver_type")
    private Integer receiveDeliverType;

    @ApiModelProperty(value = "备注")
    @TableField("remarks")
    private String remarks;

}
